![]() METHOD AND DEVICE FOR IMPLEMENTING A SYMMETRIC ENERGY ENCRYPTION OF DATA
专利摘要:
In a method for performing a symmetric stream encryption of data using a keystream and for transmitting the encrypted data, wherein the generation of the keystream is performed using at least one feedback shift register which is filled with a defined bit sequence for its initialization, the data to be encrypted becomes be divided into data packets, each data packet is encrypted separately. The feedback shift register (s) is / are reinitialized for the encryption of each data packet, wherein at least one first bit sequence and one second bit sequence are respectively used to initialize the feedback shift register (s), the first bit sequence being the respective encrypted data packet is added in plain text or coded form and the second bit string represents a secret key which is not added to the encrypted data packets. The encrypted data packets are transmitted together with the respective added bit sequence and possibly header data packet-switched. 公开号:AT510730A1 申请号:T2007/2010 申请日:2010-12-02 公开日:2012-06-15 发明作者:Rene-Michael Mag Cordes;Ernesto Dr Schobesberger 申请人:Rene-Michael Mag Cordes;Ernesto Dr Schobesberger; IPC主号:
专利说明:
«* • · · · The invention relates to a method for performing a symmetric stream encryption of data using a keystream and for transmitting the encrypted data, wherein the generation of the keystream is performed using at least one feedback shift register, which is filled to its initialization with a defined bit sequence. The invention further relates to a corresponding method for decrypting encrypted by means of a symmetric Stromver-encryption data. The invention further relates to a device for encrypting data by means of a symmetric stream encryption using a keystream, wherein for generating the keystream at least one fed-back shift register is provided, which is filled to its initialization each with a defined bit sequence. The invention further relates to a device for decrypting encrypted data by means of a symmetric stream encryption. A stream encryption is a cryptographic algorithm in which characters of the plaintext are linked individually with the characters of a key stream. In the case of stream encryption of digital data - only the characters 0 and 1 are used - the plaintext stream is linked to the keystream using the XOE function. The keystream is a pseudo-random string. Most stream ciphers use a symmetric key. The key determines the initial state of the system. To generate the keystream, at least one feedback shift register is generally used. Linear feedback shift registers can be efficiently implemented both directly in hardware such as FPGAs and in software. Feedback shift registers are fast and produce pseudo-random sequences with good statistical properties. A feedback shift register is implemented in digital technology as a shift register with n memory elements. The individual memory elements are typically D flip-flops, which can each store one bit. In contrast to a conventional shift register, there are branches between certain D flip-flops which represent the feedbacks. For feedback, an XOR function is usually used in each case. Instead of the XOR link, however, an XNOR link can also be used. For initialization, the shift register can be filled with XOR feedback with arbitrary values that determine the key stream generated by the shift register in the sequence. Like any other shift register, the feedback shift register also has a clock input: each clock pulse is changed to the next state, i. if a bit is to be output, all bits in the shift register are shifted by one memory location; the new bit at the end of the shift register is calculated depending on the other bits. This process counts as one bar. For a complete run of all combinations 2n_1 clock pulses are necessary. Such a code sequence thus has a length of 2n_1 bit (n = number of code-generating series-connected memory elements of the shift register). As a key-current generator, a plurality of linear feedback shift registers are generally used, which are usually different in length and have different feedback polynomials. This combines linear feedback shift registers to non-linear generators. The greater the length of the code sequence of the key stream or the code, the harder it is to decrypt. For example, an infinite code did not need to be hidden because it is never known. Functionally, any code that is not repeated before the end of the information to be encrypted is considered to be infinite. A functionally infinite code has the disadvantage that it can not be transmitted; it has to be generated. A disadvantage of code generators in the form of conventional feedback shift registers is the fact that the structure of the generator can easily be deduced from the code sequence so that it can be regenerated with an identically constructed generator. A substantial improvement is achieved in this regard by the code generator known from WO 03/075507 A1. Another drawback with conventional stream encryption of data is the fact that it can be used in packet-switched data transmission (e.g., over the Internet via the IP protocol) only to reduce encryption security. In the case of packet-switched data transmission, each data packet must be encrypted separately and the key used for the encryption of each data packet must be known by the recipient for the purpose of decryption, in order to enable decryption even if individual data packets are lost - 4 • * • · · · go, packets arrive twice at the receiver, packets take different paths or packets arrive fragmented at the receiver. The easiest way to guarantee a clear assignment of data with the key or keystream even under the conditions of these malfunctions is to use the same keystream for each data packet. This makes it easier to break the encryption. The present invention therefore aims to provide a method and an apparatus for encrypting and / or decrypting data using stream encryption and decryption, wherein the encrypted data should be in packets of any size such that they are simultaneous Transmission of high frequency binary data streams over long periods in packet-organized data networks are suitable. The encryption should be as secure as possible, with a break in the encryption should be virtually impossible. In order to achieve this object, according to a first aspect of the invention, the encryption method of the type mentioned at the outset is developed in such a way that the data to be encrypted are divided into data packets, that each data packet is encrypted separately, wherein the or the feedback shift registers for the encryption each data packet is reinitialized, wherein at least one first bit sequence and one second bit sequence are used to initialize the feedback shift register, the first bit sequence being added to the respective encrypted data packet in plain text or in coded form and the second bit sequence is a secret key which is not added to the encrypted data packets and that the encrypted data packets together with the respective added bit sequence and possibly header data are packet-switched transfer become. In order to decrypt the data packets, it is provided according to a second aspect of the invention that the data to be decrypted are received as data packets, each received data packet is decrypted separately, wherein the feedback shift register (s) for the decryption of each data packet is re-initialized or de-initialized In each case, at least one first bit sequence and one second bit sequence are used to initialize the feedback shift register, the first bit sequence being read out of the respective data packet to be decrypted in plaintext or in coded form and the second bit sequence representing a secret key that can not be read from the data packets to be decrypted. Thus, according to the invention, all the information required for the decryption of each individual data packet except the secret key is carried in the respective packet, so that the communication partners only have to exchange the secret key or the information required for the generation of the secret key before the data transmission. Because according to the invention each data packet contains the first bit sequence in plain text or in coded form which was used to encrypt the respective data packet, this first bit sequence can be read by the receiver from the respective data packet and used for decryption. This allows each data packet to be assigned a different key encrypt, making it difficult to break the encryption. If, as is the case with a preferred procedure, the first bit sequence selected is a bit sequence which is unique to the data packet to be encrypted and which is added to the respective encrypted data packet as a packet identifier in plain text or in coded form, it is ensured that two data packets with the same clear text content are not are also encrypted identically, so the encrypted data packets differ from each other. Conclusions on the transmitted characters by a statistical evaluation of the data packets are made more difficult. The second bit sequence, i. the secret key is preferably generated from a unique identifier of the sender and a unique identifier of the recipient. As a unique identifier here, for example, a hardware identifier of the transmitter or the receiver can be used, in particular a chip side embossed chip number or the like. The generation of the second bit sequence is preferably carried out by linking the unique identifier of the transmitter and the unique identifier of the receiver using an XOR Function. For this purpose, it is necessary that the transmitter and receiver before their data exchange their identifiers. As mentioned, the first and second bit sequences are used in the context of encryption and decryption to initialize the feedback shift register (s). This occurs in particular when only one feedback shift register is used to generate the keystream, such that the first and the second bit sequence are linked by means of an XOR function *. ··· ** · · «·« and the bit sequence resulting from the combination is fed to the feedback shift register for initialization. Alternatively, and in particular for the case where at least two feedback shift registers interconnected with one another are used for generating the key stream, the procedure is such that at least a first feedback shift register is filled with the first bit sequence for its initialization and at least one second feedback shift register is added its initialization is filled with the second bit sequence. This procedure makes it difficult to determine the structure of the key-current generator and / or the secret key on the basis of the first bit sequence transmitted in plain text. An even higher level of security results if, as is the case with another preferred procedure, a third bit sequence is used for initializing the feedback shift register (s). The third bit sequence is generated with advantage from a current date and / or time. The third bit sequence is preferably fed for initialization to a third feedback shift register. A further advantage of the method according to the invention is that the generation of the keystream can already begin as soon as at least one of the feedback shift registers is filled with the first bit from the respective bit sequence. In particular, the feedback shift registers are filled simultaneously with the respective bit sequence. As is known per se, the structure of the key-current generator is known so that at least one XOR gate is used to feed back the shift register (s). The complexity of the generator can be increased in a simple manner that the feedback shift S register are interconnected such that depending on the state of a shift register, the at least one XOR gate of the other shift register is turned on or off. A highly preferred embodiment results when a code generator is used, as described in WO 03/075507 A1, reference being made to claims 15 and 16 and also to 31 to 36 of the present application. With such a code generator, the encryption can not be broken even if both the structure of the code generator and the algorithm running in it are known. Namely, the structure of the generator is such that it is capable of generating such a high number of different codes in such a large length that the discovery of the code just used, as well as the currently produced position in the code sequence, is extremely difficult low probability is possible. The code can not be regenerated if the generator can create so many different codes that one section of the single code can not conclude its continuation. According to another aspect of the present invention, an encryption and a decryption device are proposed. The device according to the invention for encrypting data * Φ *** * * Φ *** * • * * * * «······························································································································································································································ Generating the keystream at least one feedback shift register is provided, which is filled with a defined bit sequence for its initialization, is characterized in that the data is divided into data packets that means for generating and / or storing at least a first bit sequence and a second bit sequence are provided which cooperate with the shift register (s) such that at least the first bit string and the second bit string are used to initialize the feedback shift register (s), the feedback shift register (s) for the Encryption of each data packet is reinitialized that data packet processing means are provided, with which the means for Generi or storing the first and second bit sequences in such a way that the first bit sequence is added to the respective encrypted data packet in plain text or in coded form and the second bit sequence represents a secret key which is not added to the encrypted data packets, and in that data transmission means for packet-switched transmission of the encrypted data packets including the respective added bit sequence and possibly header data are provided. The device according to the invention for decrypting data encrypted by means of a symmetric stream encryption using a keystream, wherein at least one feedback shift register is provided for generating the keystream, which is filled with a defined bit sequence for its initialization, is characterized in that the encrypted • »♦» Data are distributed in data packets so that means are provided for reading out a first bit sequence in plain text or in coded form from the data packets and means for generating and / or storing at least one second bit sequence which interact with the shift register (s) in such a way that in that at least the first bit sequence and the second bit sequence are used to initialize the feedback shift register (s), the feedback shift register (s) being reinitialized for the decryption of each data packet, the second bit sequence representing a secret key that can not be read from the encrypted data packets. Preferred developments emerge from the subclaims. The invention will be explained in more detail below with reference to embodiments shown schematically in the drawing. 2 shows a decryption device according to the invention, FIGS. 3, 4, 5 and 6 show various embodiments of a key-current generator used in the device. In Fig. 1, a data packet to be encrypted is designated 1, wherein the data packet 1 comprises a plurality of bits in plain text. The encryption takes place in principle such that the bits of the bit stream 2 of the plaintext are linked to the bits of a keystream 3 individually with the aid of an XOR gate 4. The generation of the key-current 3 is a code generator 5, which will be described in more detail with reference to FIGS. 3 to 6. The code generator 11 generates the keystream 3 based on a plurality of bit strings 6, 7 and 8, the be supplied to the code generator 5 as a key. A first bit sequence 6 is stored in a memory 9 and represents a unique identifier of the data packet 1 to be encrypted. The uniqueness here must be given at least within the total number of data packets to be transmitted coherently. The length of the first bit sequence is thus at least log (N; 2) bits (N = total number of transmitted packets). The second bit sequence 7 is stored in a memory 10 and is generated from a unique identifier 11 of the sender and a unique identifier 12 of the receiver. The generation of the second bit sequence 7 takes place in that the bits of the unique identifier 11 and the bits of the unique identifier 12 are linked together by means of an XOR gate 13. Due to the use of the second bit sequence 7 as the key for the generation of the key stream 3, it is ensured that only the recipient, who must also be aware of the unique identifiers 11 and 12, can decrypt the encrypted data packets. The third bit sequence 8 is stored in a memory 14 or is generated there, based on a current date or time. For example, the bit sequence 8 corresponds to the current date. As a result, key stream 3 has a completely different structure every day, making it difficult to break encryption. The encrypted data of the data packet are now supplied to data packet processing means 15, with which the memory 9 for the first bit sequence 6 cooperates in such a way that the first bit sequence 6 is added to the encrypted data packet in plain text. The second bit sequence 7 and the - 12 - »*« · third bit sequence 8, however, are not added to the encrypted data packet, but are known anyway at the receiver. The data packet processing means 15 further ensure that the encrypted data packet is provided with the usual header data required for the packet-switched transmission in a computer network. The data packet prepared for the transmission thus consists of header data 16, the first bit sequence as packet identifier 17 and the encrypted user data 18. The data transmission means for packet-switched transmission of the data packet are designated by 19. The device shown in Fig. 2 for decrypting the encrypted data packets is constructed essentially analog. The header data 16, the first bit sequence as a packet identifier 17 and the encrypted user data 18 containing packet is supplied on arrival reading means 20, in which the second bit sequence 17 is read out and a memory 21 is supplied. The encrypted user data 18 are subsequently fed to an XOR gate 22, in which the bits of the encrypted bit stream 23 and the bits of the keystream 3 are linked to one another in order to obtain the decrypted data packet 1 in this way. The keystream 3 used to decrypt a particular data packet must be the same as the keystream used to encrypt that data packet. For this purpose, the same bit sequences 6, 7 and 8 are supplied to the generator 5 as a key and the generator 5 used for the decryption is identical to the generator 5 used for encryption. The memory for the second bit sequence 7 is denoted by 24. The memory 24 is supplied with the transmitter and receiver identifiers 11 and 12 linked to one another via the XOR gate 25. The third bit sequence 8 is stored in the memory 26 or is generated there. 5 shows a basic circuit of a key-current generator 5 with a shift register 27, which consists of a plurality of memory elements which are combined to form a code-producing row, namely flip-flops FF1, FF2,... FF9. An XOR gate XORpl is connected such that one input of the XOR gate XORpl is connected to the output of the code-producing memory element FF2 and the other input of the XOR gate is connected to the output of the code-producing line FF5 and the output of the XOR-15 gates XORpl is connected to the input of the downstream memory element FF3 in the row following the memory element FF2 connected in series with the one input of the XOR gate XORpl, in other words recursively. Furthermore, it can be seen that the last memory element FF9 is connected via a 20 inverter INV to the first memory element FF1. As soon as the shift register 27 is filled with a bit sequence, a code sequence is obtained with this circuit. If, as is the case with the embodiment according to FIG. 3, only a single shift register is used, the bit sequences 6, 7 and 8 are supplied to the shift register 27 such that the bit sequences 6 and 7 are first of all Gatters 28 are linked together and then the linked bit sequence with the bit string 8 using the XOR gate 29 is linked. It is preferred that the generated from the bit sequences 6, 7 and 8, the Shift register 27 is not longer than this corresponds to the number of memory elements in the shift register 27, since the bit sequence otherwise from the over the ·· * tl 4 * 4 4 4 ** 9 • * '4 · · 4 4 «» • · * B * * * I «*« · • · 9 «4» t * t 4 _. * · «« 4 ··· * · ♦ # · 94 - 14 - Inverter INV from the memory elements FF9 coming bit sequence would be superimposed. In the modified embodiment according to FIG. 4, a total of three shift registers 30, 31 and 32 are used. The Memory elements of the individual shift registers are interconnected recursively in this example in the same way as in Fig. 3. The shift registers are further interconnected such that, depending on the state of the second shift register 31, the function of the XOR gate XORPL the recursive connection of the first shift register 30 is switched on and off. The function of the XOR gate XORppl the recursive interconnection of the second shift register 31 is in turn turned on and off in response to the state of the third shift register 32. For this purpose, the output of the flip-flop FFp2 or FFpp2 of the one shift register 31 and 32, respectively, is connected to the input of an AND gate ANDpl or UNDppl, which is connected to the respective recursive function XORpl or XORppl of the shift registers 30 and 31, respectively is inserted. This results in a code generator 5 with three levels, the code generation at each level by initializing the respective shift register 30, 31 and 32 with the Bit sequence 6, 7 and 8 is affected. In this case, the initialization can preferably take place such that the first bit sequence 6 is supplied to the shift register 30 of the first level, the second bit sequence 7 to the shift register 31 of the second level, and the third bit sequence 8 to the shift register 32 of the third level, the bit sequences 6, 7 and 8 are preferably defined as described in FIGS. 1 and 2. In the embodiment according to FIG. 5, the position shown in FIG. 4 is - 15 I * («4 · · · · Structure even more complex designed and there are provided in particular longer codeproducing rows and a plurality of recursive interconnections. In this case, a number of continuously connected in series memory elements in the form of shift registers SRG1, SRG2, ... realized that functionally together form a shift register 33 in the context of the invention. It doubles the length of the code per added memory element, so the length of the code is calculated as follows Lc = 2n-1 (Lc = length of the code sequence, n = number of code-generating memory elements connected in series) If this unit is operated with a specific clock, the duration of the code is 2n - 1 Tc ----------- fc (Tc = duration until code repeats; fc = code generation clock frequency) With fewer than 50 memory elements at a code generation clock rate of 384,000 bps, the code will run for more than a year without repeating the sequence so that a signal to be encrypted can be sent and decrypted encrypted over an equally long period of time over a dedicated line that transmissions live over an equally long period are possible. Now, with the length of the shift register * * • • • - 16 • ♦ • »« * · t · • · Μ · « • I 33 at several points of this shift register 33 between a memory element FF1,2,3,4 and the next in-line memory element FF2,3,4,5 an XOR gate XORPL, p2, p3, p4 inserts and then this with feeds the signal from a third memory element FF8, 15, 20, 23, the respective code thus generated is changed (FIG. 5). With a plurality of code-changing XOR gates XORpl, p2, p3, p4, see FIG. 5, it should be ensured that the various code-changing XOR gates XORpl, p2, p3, p4 whose first input is from an output of a memory element FF1, 2,3,4 is fed, their second input in each case from the output of a memory element FF8,15,20,23 fed, which is a number of memory elements in the flow direction of the first memory element FF1,2,3,4 removed, each of a different Prime number greater than 1 but not a fraction of the total number of memory elements connected in row R, so that there are no code sequence shortening resonance effects in influencing the code sequence. Between the corresponding memory element pairs FF1,8; FF2,15; FF3,20; Thus, FF4, 23 each has a number of 7, 13, 17 and 19 (prime numbers) memory elements. If one of the two inputs of the respective XOR gate s XORpl or XORpl, p2, p3, p4, the output of an AND gate ANDpl or ANDP1, p2, p3, p4 whose one input at the output of the memory element FF3 or FF8 , 15, 20, 23, then one can then connect this XOR gate XORpl or XORpl, p2, p3, p4 in its code-changing action via the second input of the AND gate ANDP1, p2, p3, p4 - and switch off and if you add another one to each »» * * Μ ·· «» Memory element FFpl or FFpl, p2, p3, p4 connects, make the switching on and off of the code-influencing effect of the XOR gate XORpl or XORpl, p2, p3, p4 programmable. The code-programming memory elements FFpl, p2, p3, p4 can be interconnected to form a shift register 34. Subsequently, the codeprograminierenden memory elements FFpl, p2, p3, p4 shift register 34 itself can be recursively reconnected by means of an XOR gate XORppl. The number of programmable different codes is calculated as follows: Nc = 2pn - 1 (Nc = number of possible different codes, pn = number of programmable XOR gates XORpl, p2, ... pn) Now, if you are in possession of an identical code generator, and want to deduce the further course of the code sequence on the basis of a certain number of bits, then the probability of recognizing the correct continuation of the code sequence depends both on the number of memory elements used in the code generation FFl, 2, ... n as well as those of the programmable code-changing XOR gates XORpl, p2, ... pn. This results in a probability to discover the programming underlying the code and thus to predict the further course of the code from: Nb W {2n - 1) * (2pn - 1) • Λ · «« · »*» * Φ * · - 18 • Φ * · · φ Φ φ · * · · Φ Φ * * · · • · Φ Φ « φ · φφφ * · · «« # * φ «· φ * (Nb = number of bits observed in the code sequence; n = number of code-generating series-connected memory elements FFl, 2, ... n; pn = number of programmable codes changing XOR gate XORpl, p2, ... pn) Example: 233 is the 52nd prime. If one does not use 1 and 233 expresses the total number of memory elements connected in series, then there are 50 different memory elements on this path, which are each at a distance from an output memory element which corresponds to a prime number (np = 50). Since each recursive XOR gate 1-50 is turned on between a next memory element 1-50 starting from the first one in series, the total length of the memory elements is extended to (n = 233 + 50 = 283). It follows: Nb Nb W = --------------------------------------------- ( 2n - 1) * (2pn - 1) (2283 - 1) * (250 - 1) Nb W ------------------------------------------------ --- (1.5541351138 * 1085-1) * (1,125,899,9068 * 1015-1) Nb W -------------------- 1,7498ü05798 * IO100 In other words, one has to observe the code sequence 1.7498005798 * IO100 clock steps, so that with the probability 1 one discovers a certain sequence. If the clock frequency is 384000 Hz, this gives a necessary Observation time of 1.4449430312 * 1087 years. By recursively interconnecting the code-programmable memory elements (FFpl, p2, p3, p4, p5, p6) of the shift register 34 so that they within the time interval 2pn - 1 T pn = ------------ fp (T pn = cycle time of all possible programming states; pn = number of program memory elements; fp = programming clock frequency) undergo all possible state combinations, the programming results from a certain period of time in which the code-programming memory elements are supplied with one program clock. In order to ensure that the programming time can not be approximated, the programming can be carried out in two stages. For this purpose, a further programming level can be added by the codeprogammieren-de XOR gate XORppl itself in turn with the interposition of an AND gate ANDppl connected to a memory element row RRR and thus made programmable, in turn, an XOR gate XORpppl for recursive Interconnection of the shift register 37 is used (Fig.6), On the basis of the above calculation example, this ensures that the (22e3-l} * (2S0-1) different states are divided into • · 20 250 "1 different sections, one of which is selected in the first programming phase 2ppn - 1 steps (ppn = number of primes contained in the number of primes (50) used in programming 5, ie 16) This means that a maximum of 216 steps must be taken before all the sections are visited, at a programming clock frequency This time is probably measured at 10 of each programming because it is below the response time of the human being, which is why it is ensured that no conclusions about the programming of the keys are drawn from the actually elapsed programming time can be 15
权利要求:
Claims (35) [1] - 21 · # · * * · • »« · < ·· at * * * * * * * * * * ♦ * * * * * ♦ «*« * · ** «» · «« «« «« · »Claims 1. A method for performing symmetric stream encryption of data using a keystream and transmitting the encrypted data, the generation of the keystream using at least one feedback shift register which is filled with a defined bit sequence for its initialization, characterized in that the data to be encrypted is divided into data packets, each one Data packet is encrypted separately, wherein the or the feedback shift register (s) is re-initialized for the encryption of each data packet, wherein at least one first bit sequence and a second bit sequence is used to initialize the or each feedback shift register, wherein the first bit sequence of the respective encrypted data packet in plain text or is added in coded form and the second bit sequence represents a secret key which is not added to the encrypted data packets, and that the encrypted data packets are transmitted packet-switched together with the respective added bit sequence and possibly header data. [2] 2. A method for decrypting encrypted by means of a symmetric stream encryption data using a keystream, wherein the generation of the keystream using at least one feedback shift register, which is filled to its initialization each with a defined bit sequence, characterized in that the data to be decrypted are received as data packets that each received gene data packet is decrypted separately, wherein the or the feedback shift register (s) is re-initialized for the decryption of each data packet, wherein at least one first bit sequence and a second bit sequence is used for initialization of the or each feedback shift register, wherein the first bit sequence is read from the respective data packet to be decrypted in plain text or in coded form and the second bit sequence represents a secret key which can not be read from the data packets to be decrypted. [3] 3. The method according to claim 1 or 2, characterized in that the first and the second bit sequence are linked by means of an XOR function and the result of the link bit sequence for initialization is fed to the feedback shift register. [4] 4. The method of claim 1 or 2, characterized in that at least a first feedback shift register is filled to its initialization with the first bit sequence and at least a second feedback shift register is filled to its initialization with the second bit sequence. [5] 5. The method according to any one of claims 1 to 4, characterized in that as the first bit sequence for the data packet to be encrypted unique bit sequence is selected, which is added to the respective encrypted data packet as a packet identifier in plain text or in coded form. 6. The method according to any one of claims 1 to 5, characterized * * · »« · characterized in that the second bit sequence is generated from a unique identifier of the transmitter and a unique identifier of the receiver. [6] 7. The method according to claim 6, characterized in that the generation of the second bit sequence by linking the unique identifier of the transmitter and the unique identifier of the receiver by means of an XOR function. [7] 8. The method according to any one of claims 1 to 7, characterized in that for initialization of the or the feedback shift register further a third bit sequence is used. [8] 9. The method according to claim 8, characterized in that the third bit sequence is generated from a respective current date and / or time. [9] 10. The method according to claim 8 or 9, characterized in that the third bit sequence for initialization is supplied to a third feedback shift register. [10] 11. The method according to any one of claims 1 to 10, characterized in that the generation of the key stream begins as soon as at least one of the feedback shift registers is filled with the first bit from the respective bit sequence. [11] 12. The method according to any one of claims 1 to 11, characterized in that the feedback shift registers are filled simultaneously with the respective bit sequence. * * * ······ _ ·· *** «· ♦ * ·» «· · * [12] 13. The method according to any one of claims 1 to 12, characterized in that for the feedback of the shift register or at least one XOR gate is used. [13] 14. The method according to any one of claims 1 to 13, characterized in that the feedback shift registers are interconnected in such a way that depending on the state of a shift register, the at least one XOR gate of the other shift register is turned on or off. [14] 15. The method according to any one of claims 1 to 14, characterized in that the at least one feedback shift register has a plurality of memory elements connected to a codeproduzierenden row, wherein the output of the last row in the memory element to the input of the first memory element in the row is connected together by means of the at least one XOR gate in such a way that the first input of the XOR gate to the output of a memory element in the codeproducing row, the second input to the output of another in the codeproduzierenden row located memory element and the output is connected to the input of the codeproducing in the row connected to the first input of the XOR gate memory element subsequent memory element. [15] 16. The method according to claim 15, characterized in that in the second input of the at least one XOR gate and the output of the further in the codeproducing row located memory element line connecting an AND gate is connected such that the output - And the second gate of the AND gate having the second input of the XOR gate, the first input of the AND gate having the output of the further memory element in the code-producing row, and the second input of the AND gate is connected to the output of a code-programming memory element, wherein a memory element of a further feedback shift register is used as the code-programming memory element, and that preferably the output of a memory in the codeproducing row memory element to the input of an inverter and the output of the inverter with the Input of another arranged in the codeproducing row memory element is connected. [16] 17. An apparatus for encrypting data by means of a symmetric stream encryption using a keystream (3}, in particular for carrying out the method according to any one of claims 1 and 3 to 16, wherein for generating the keystream (3) at least one feedback shift register (27; 30,31,32; 33,34; 35,36,37}, which is filled in each case with a defined bit sequence for its initialization, characterized in that the data are divided into data packets (1) such that means (9, 10) are provided for generating and / or storing at least one first bit sequence (6) and a second bit sequence (7} which are connected to the shift register (s) (27; 30, 31, 32; 33, 34; 36, 37) such that at least the first bit sequence (6) and the second bit sequence (7) are used to initialize the feedback shift register (s) (27, 30, 31, 32; 33, 34; 35, 36, 37) be, with the or the feedback (s) Schie register (27; 30,31,32; 33.34; 35, 36, 37) for the encryption of each data packet (1) 26 «« Is initialized that data packet processing means (15) are provided, with which the means (9, 10) for generating or storing the first (6) and the second (7) bit sequences interact such that the first bit sequence ( 6) is added to the respective encrypted data packet in plain text (17) or in coded form and the second bit sequence (7) represents a secret key which is not added to the encrypted data packets, and in that data transmission means (19) for packet-switched transmission of the encrypted data packets together the respective added bit sequence (17) and possibly header data (16) are provided. [17] 18. An apparatus for decrypting data encrypted by means of a symmetrical stream encryption using a keystream (3), in particular for carrying out the method according to one of claims 2 to 16, wherein at least one feedback shift register (27; 31,32; 33,34; 35,36,37), which is filled in each case with a defined bit sequence for its initialization, characterized in that the encrypted data are split up into data packets (1), that means (20) for the Readout of a first bit sequence (6) in plain text or in coded form from the data packets and means (24) for generating and / or storing at least one second bit sequence (7) provided with the shift register (s) (27; 30, 31, 32, 33, 34, 35, 36, 37) cooperate in such a way that at least the first bit sequence (6) and the second bit sequence (7) are used to initialize the feedback shift (s) register (27; 30,31,32; 33.34; 35,36,37), the feedback shift register (s) (27; 30,31,32; 33,34; 35,36,37) being used for the decisions. tion of each data packet is reinitialized, the second bit sequence (7) representing a secret key which can not be read out of the encrypted data packets. [18] 19. The apparatus of claim 17 or 18, characterized in that the means (9,10; 20,21,24) for generating, storing or reading the first (6) and the second (7) bit sequence with an XOR gate (28) cooperating in such a way that the first bit sequence (6) and the second bit sequence (7) are linked by means of an XOR function, the bit sequence resulting from the combination being fed to the feedback shift register (27) for initialization. [19] 20. Device according to claim 17 or 18, characterized in that the first bit sequence (6) is fed to at least a first feedback shift register (30; 33; 35) for its initialization and the second bit sequence (7) is fed to at least one second feedback shift register (31 34, 36) is fed to its initialization. [20] 21. Device according to one of claims 17 to 20, characterized in that the first bit sequence (6) is a for the data packet to be encrypted (1) unique bit sequence, the respective encrypted data packet as a packet identifier (17) in plain text or in coded form is added. [21] 22. Device according to one of claims 17 to 21, characterized in that means (13; 25) are provided for generating the second bit sequence (7) from a unique identifier (11) of the transmitter and a unique identifier (12) of the receiver. - 28 ·· ··· [22] 23. The device according to claim 22, characterized in that the means (13; 25) for generating the second bit sequence (7) comprises an XOR gate whose one input the unique identifier (11) of the transmitter and the other input the unique identifier (12) of the receiver is supplied. [23] 24. Device according to one of claims 17 to 23, characterized in that means (14; 26) for generating and / or storing at least one third bit sequence (8) are provided, which with the or the shift register (s) (27; 32, 37) in such a way that also the third bit sequence (8) is used to initialize the feedback shift register (s) (27; 32; 37). [24] 25. The apparatus of claim 24, characterized in that the third bit sequence (8) is generated from a respective current date and / or time. [25] 26. The apparatus of claim 24 or 25, characterized in that the third bit sequence (8) for initialization of a third feedback shift register (32, 37) is supplied. [26] 27. The device according to one of claims 17 to 26, characterized in that the generation of the key stream (3) begins as soon as at least one of the feedback shift registers (27; 30,31,32; 33,34; 35,36,37) with the first bit from the respective bit sequence is filled. [27] 28. Device according to one of claims 17 to 27, characterized in that the feedback shift registers (30,31,32; 33,34; 35,36,37) coincide with the * * * * * μ * * «·· * · · · · · · «ft * • t ft ft" ft ft ft | • ft ft ··· «* · * ftftft ·« · · · · · · · · · · · ft ft * - 29 - each bit sequence. [28] 29. Device according to one of claims 17 to 28, characterized in that for the feedback of the or the shift register (27; 30,31,32; 33,34; 35,36,37) at least one XOR gate (XORpl, XORp2 , XORp3, XORp4, XORppl, XORpppl). [29] 30. Device according to one of claims 17 to 29, characterized in that the feedback shift registers (30,31,32; 33,34; 35,36,37) are so interconnected ver that depending on the state of a shift register the at least one XOR gate (XORpl, XORp2, XORp3, X0Rp4, XORppl) of the other shift register is turned on or off. [30] 31. Device according to one of claims 17 to 30, characterized in that the at least one feedback shift register (30, 31, 32; 33, 34; 35, 36, 37) has a plurality of memory elements (FF1, FF2.) Connected to a code-producing row , ...; FFpl, FFp2, ...; FFppl, FFpp2, ...), the output of the last memory element in the row being connected to the input of the first memory element in the series to form a circuit, wherein the feedback with the aid of the at least one XOR gate (XORpl, XORp2, XORp3, XORp4, XORppl, XORpppl) such that the first input of the XOR gate is connected to the output of a memory element (FF2) located in the code-producing row, the second input to the output of another memory element (FF5) located in the code producing row and the output having the input of the code producing line to the memory element connected to the first input of the XOR gate ··· ** · t * «* · ·· *» # · · · · · · · · · · · · · · · · · · · - 30 - subsequent memory element (FF3) is connected. [31] 32. Apparatus according to claim 31, characterized in that the line connecting the second input of the at least one XOR gate (XORpl) and the output of the further memory element (FF5) located in the code-producing row (30; Gate (ANDpl) is connected such that the output of the AND gate {ANDpl) to the second input of the XOR gate (XORpl), the first input of the AND gate (ANDpl) to the output of the other in the code-producing row (30; 33; 35) memory element (FF5) and the second input of the AND gate (ANDpl) is connected to the output of a code-programming memory element (FFp2) and that preferably the output of one in the code-producing series (30; 33; ) is connected to the input of an inverter (INV) and the output of the inverter (INV) is connected to the input of another memory element (FF1) arranged in the code-producing row (30; 33; 35) e., a memory element of a further feedback shift register (31; 34; 36) is used. [32] 33. Apparatus according to claim 31 or 32, characterized in that a plurality of XOR gates (XORpl, p2, p3, p4) is provided, whose first input is in each case from an output of one in the codeproduzierenden series (30; 33; 35) the second input is fed in each case by the output of a further memory element (FF8, 15, 20, 23) located in the code-producing row (30, 33, 35) which has a number of memory elements (FF1, 2, 3, 4, 4) of storage elements in the flow direction of the row (30; 33; 35) of which in each case with the first input Μ ··· * * * * * * * • * • * * * * * * * * ···· | * * • * * * * • • * * * * * ****** • * «*» * «* · · - 31 - connected memory element (FF1,2,3,4) is removed, which one each corresponds to a different prime number, which is greater than 1 and not a partial amount of the total number of memory elements (FF1, 2, ..., n) connected in series (30, 33, 35). [33] 34. Device according to one of claims 31 to 33, characterized in that a plurality of code-programmable, each an AND gate (ANDP1, p2, p3, p4) and an XOR gate (XORP1, p2, p3, p4) associated memory elements (FFpl, p2, p3, p4, ... pn) and is connected in a closed series (31; 34; 36) and at least one XOR gate (XORppl) is arranged, whose first input is connected to the output a memory element (FFp6) located in the code-programming series (31; 34; 36), whose second input is connected to the output of another memory element (FFp5) in the code-programming series (31; 34; 36) and whose output is connected to the input the memory element (FFp6) connected in the code-programming series (31; 34; 36) is connected to the memory element (FFp6) connected to the first input of the XOR gate (XORppl). [34] 35. Device according to one of claims 31 to 34, characterized in that in the second input of the at least one XOR gate (XORppl) and the output of the further in the code-programming row (31; 34; 36) located memory element (FFp3) connecting line is an AND gate (ANDppl) connected such that the output of the AND gate (ANDppl) to the second input of the XOR gate (XORppl), the first input of the AND gate (ANDppl) to the output of the other memory element in the code-programming row (31; 34; 36) (FFp3) and the second input of the AND gate (ANDppl) is connected to the output of a memory element (FFpp5) serving to program the code-programming series (31; 34; 36). 5 [35] 36. Device according to one of claims 31 to 35, characterized in that a plurality of the programming of the code-programming series (31; 34; 36) serving, each associated with an AND gate (ANDppl) and an XOR gate 10 (XORppl) Memory elements (FFppl, pp2, pp3, pp4, ... ppn) is provided and in a closed loop in a row (32; 37) is arranged and at least one XOR gate (XORpppl) is arranged, the first input to the output of a memory element (FFppl) located in the row (32; 37) 15, whose second input is connected to the output of a further memory element (FFpp3) in the row (32; 37) and whose output is connected to the input of the one in the row (32; ) connected to the first input of the XOR gate (XORpppl) Speicherele-20 ment (FFppl) subsequent memory element (FFpp2) is connected. Vienna, on 2 December 2010 the applicants by: Haffner and Keschmann Patentanwälte OG
类似技术:
公开号 | 公开日 | 专利标题 AT510730B1|2013-06-15|METHOD AND DEVICE FOR IMPLEMENTING A SYMMETRIC ENERGY ENCRYPTION OF DATA DE69722367T2|2004-04-01|Pseudo random generator with clock selection DE69728465T2|2005-05-19|Non-parallel multi-cycle encryption device DE60222052T2|2008-05-21|Encryption secured against attacks through the analysis of power consumption | DE2715631A1|1977-11-03|ENCRYPTION AND SECURITY OF DATA DE10129285C2|2003-01-09|Encryption procedure with arbitrary selectable one-time keys DE60315700T2|2008-06-05|METHOD FOR GENERATING ENERGY ENCODING WITH SEVERAL KEYS DE2231849A1|1973-01-11|DEVICE FOR ENCiphering or deciphering a block of binary data EP0012974B1|1983-05-25|Method for enciphering data blocks of a given length DE102004042826A1|2005-03-31|Method and device for data encryption DE102009000869A1|2010-08-19|Method and device for tamper-proof transmission of data DE19924986A1|1999-12-02|Encryption conversion device for electronic toll collection EP1481509B1|2011-04-20|Code generator and device for synchronous or asynchronous and permanent identification or encoding and decoding of data of any particular length DE69729297T2|2005-06-09|ENCRYPTION DEVICE FOR BINARY CODED MESSAGES DE2840552C2|1983-12-01|Digital transmission system DE102004010666B4|2006-02-02|Key bit stream generation WO2013110103A2|2013-08-01|Method for writing and reading data DE19757370C2|2000-03-23|Process for the tactile generation of pseudo-random data words EP2288073B1|2013-07-31|Apparatus for encrypting data WO2015176087A1|2015-11-26|Method and device for performing a symmetric stream encyption of data DE10303723B4|2006-02-16|Apparatus and method for calculating encrypted data from unencrypted data or unencrypted data from encrypted data DE4420967C2|2000-02-10|Decryption device for digital information and method for carrying out the encryption and decryption of this using the decryption device DE102008042406B4|2010-10-07|Process for the secure exchange of data DE2310654C1|1996-01-11|Bit type encoding and decoding installation for digital information EP3734486A1|2020-11-04|Computer implemented method for replacing a data string
同族专利:
公开号 | 公开日 US20170264598A1|2017-09-14| AT510730B1|2013-06-15| WO2012071597A1|2012-06-07| EP2647157A1|2013-10-09|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题 EP0615361A1|1993-03-12|1994-09-14|Hughes Aircraft Company|System and method for high speed encryption using multiple keystream generator| US5859912A|1996-03-22|1999-01-12|General Electric Company|Digital information privacy system| US20030091185A1|2001-09-13|2003-05-15|Swindlehurst Richard J.|Key stream cipher device| WO2003075507A1|2002-03-05|2003-09-12|Cordes Rene-Michael|Code generator and device for synchronous or asynchronous and permanent identification or encoding and decoding of data of any particular length|AT516290A1|2014-09-19|2016-04-15|Metadat It Beratungs Und Entwicklungs Gmbh|code generator| WO2017177243A1|2016-04-14|2017-10-19|Metadat It-Beratungs- Und Entwicklungs-Gmbh|Code generator|CH411983A|1963-10-18|1966-04-30|Gretag Ag|Method for encrypting and decrypting pulse-shaped messages| JP2541480B2|1993-10-06|1996-10-09|日本電気株式会社|Pseudo random number generator| WO2007059558A1|2005-11-23|2007-05-31|The University Of Sydney|Wireless protocol for privacy and authentication|AT515814A1|2014-05-20|2015-12-15|Logodynamic Unit Gmbh|Method and apparatus for performing symmetric stream encryption of data| US11165758B2|2018-04-09|2021-11-02|International Business Machines Corporation|Keystream generation using media data| TWI736998B|2019-10-04|2021-08-21|東隆五金工業股份有限公司|Data encryption and decryption processing method| AU2020202883B1|2020-01-10|2021-01-07|Mesinja Pty Ltd|Systems and computer-implemented methods for generating pseudo random numbers|
法律状态:
2017-08-15| MM01| Lapse because of not paying annual fees|Effective date: 20161202 |
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 ATA2007/2010A|AT510730B1|2010-12-02|2010-12-02|METHOD AND DEVICE FOR IMPLEMENTING A SYMMETRIC ENERGY ENCRYPTION OF DATA|ATA2007/2010A| AT510730B1|2010-12-02|2010-12-02|METHOD AND DEVICE FOR IMPLEMENTING A SYMMETRIC ENERGY ENCRYPTION OF DATA| PCT/AT2011/000483| WO2012071597A1|2010-12-02|2011-12-01|Method and apparatus for performing symmetrical stream encryption of data| EP11796910.5A| EP2647157A1|2010-12-02|2011-12-01|Method and apparatus for performing symmetrical stream encryption of data| US13/991,389| US20170264598A1|2010-12-02|2011-12-01|Method and apparatus for performing symmetrical stream encryption of data| 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|